当前位置:主页 > Office办公 > Excel VBA

Excel VBA

Excel VBA中怎么设置Function
Excel VBA中怎么设置Function

Excel VBA中怎么设置Function,经过前面的一系列文章的示例学习,我们应该已经熟悉了Sub过程。通常我们看到的Sub过程的基本形式是:Sub 过程名称()[此处放置代码语句]Exit SubEnd Sub这也是我们在编写大多数VBA程序时用到的结构。其中:过程名称为编程人员给过程命名的名称,其命名规则与变量名称的规则相同。在同一模块中的过程名称不能同名。Sub和End Sub配套出现,它们之间构成一个完整的程序过程。过程中的代码可以放置ExitSub语句,表示提前退出过程。通常,在VBE编辑器中,写下sub和过程名称,按下回车键后,会自动添加End Sub语句。Sub过程用来执行操作,而Function过程可以返回值,创建自定义函数。Function过程的基本语法形式为:

88 次浏览
Excel中怎么用VBA运算符
Excel中怎么用VBA运算符

Excel中怎么用VBA运算符?还记得小时候学习数学的经历吗?很小很小的时候,我们会接触到数字,大人们会教我们数数,认识简单的数字,慢慢地我们会开始学习简单的加减法,再大一点,会学习乘除法,背诵乘法口诀,随着学习的深入,我们会逐渐学习到更复杂的运算和规则。运算无处不在。在编写程序代码时,很多内容都是在进行各种各样的运算,因此,运算符非常重要。当然,最开始我们都是从了解最基本的运算开始,逐渐深入到更多的运算内容。最先应该了解的当然是加、减、乘、除等算术运算符。算术运算符常用的VBA算术运算符有:加(+)、减(-)、乘(*)、除(/)、整除(\)、取模(MOD)、求幂(^)。基本的运算如下所示。说明:对于除法(/)运算符:假设z=x/y,如果将z声明为整型数,则结果为4,即直接舍弃掉小数位;如果将z声明为Single型或Double型,则结果为4.5。整除(\)运算符,即在除法运算中,结果直接取商,而不管余数。取模(MOD)运算符,即在除法运算中,结果取余数。

195 次浏览
excel中怎么做vba循环
excel中怎么做vba循环

excel中怎么做vba循环?前面我们介绍过Excel的对象模型及一些常用的对象,也解过对象变量的概念及声明对象变量的方法。其实,在绝大多数情况下,我们都是通过使用Excel VBA操纵Excel对象来达到我们的目的。例如,我们可以操作工作表对象,为工作表命名、排序工作表、统计工作表个数;我们可以操作单元格对象,在单元格区域中填充内容、查找有指定内容的单元格;等等。为方便操控Excel对象,VBA提供了For Each-Next结构,可以在对象组成的集合中循环,给集合中的所有对象执行操作,或者集合中满足相关条件的对象执行操作。使用For Each-Next结构,我们无需知道集合中对象的数目,只需要声明相应的对象变量,编写执行操作的指令。For Each-Next结构的语法如下:For Each 对象变量In 对象集合[语句块][Exit For][语句块]Next [对象变量]说明:

excel vba对象是什么,包含些什么对象,以及常用VBA对象说明和含义
excel vba对象是什么,包含些什么对象,以及常用VBA对象说明和含义

VBA中有四个最基本的概念:对象、属性、方法与事件。   工作簿、工作表、单元格、批注、透视表、自选图形、名称等等都是对象,VBA正是用于处理这些对象的语言。第一,excel vba对象基本概念介绍  excel vba对象有很多,每个对象又有自己的属性和方法。  excel vba对象到底是什么呢?VBA是面向对象的一种程序语言。  Excel的操作几乎都是围绕工作簿、工作表、单元格展开的,这些就是Excel操作的核心对象,这些也是VBA的核心对象。  对于Excel来说,最外层的vba对象就是Application,代表整个Excel应用程序。  每个Excel文件,都对应一个Workbook;  文件中的每个Sheet工作表,都对应一个Worksheet;  表单中的单元格,对应的是Range对象。

777 次浏览
如何解除Excel VBA工程密码
如何解除Excel VBA工程密码

将你要解除的Excel文件关闭,另存为2003版格式(.xls),然后新建一个Excel文件,打开新建的这个Excel,按下alt+F11,打开VBA 界面,新建一个模块,如图所示将代码复制到这个模块中,代码如下:Private Sub VBAPassword() '你要解保护的Excel文件路径(把要解除的excel保存为2003-97 xls) Filename = Application.GetOpenFilename("Excel文件(*.xls & *.xla & *.xlt),*.xls;*.xla;*.xlt", , "VBA解除") If Dir(Filename) = "" Then MsgBox "没找到相关文件,清重新设置。" Exit Sub Else FileCopy Filename, Filename & ".bak" '备份文件。 End If Dim GetData As String * 5 Open Filename For Binary As #1 Dim CMGs As Long Dim DPBo As Long For i = 1 To LOF(1) Get #1, i, GetData If GetData = "CMG=""" Then CMGs = i If GetData = "[Host" Then DPBo = i - 2: Exit For Next If CMGs = 0 Then MsgBox "请先对VBA编码设置一个保护密码...", 32, "提示" Exit Sub End If Dim St As String * 2 Dim s20 As String * 1 '取得一个0D0A十六进制字串 Get #1, CMGs - 2, St '取得一个20十六制字串 Get #1, DPBo + 16, s20 '替换加密部份机码 For i = CMGs To DPBo Step 2 Put #1, i, St Next '加入不配对符号 If (DPBo - CMGs) Mod 2 <> 0 Then Put #1, DPBo + 1, s20 End If MsgBox "文件解密成功......", 32, "提示" Close #1 End Sub 点击运行,打开第一步另存为2003版格式的Excel表格即可。 首先,如果文件格式是(.xslm),需要先打开Excel文件,另存为2003版格式(.xls),保存过程中如有弹出提示,直接点击确认即可。然后点击选中文件,单击右键打开方式选择使用记事本打开,还可以使用文本编辑器(我用的是NotePad++)打开这个文件。然后在文件里查找“DPB",把它改成“DPx”。注意大小写。(这个是重点)保存修改。然后用Excel重新打开这个文件。你会遇到一些错误,忽略它们。

7694 次浏览
excel中vba的属性和方法,以及属性方法的区别
excel中vba的属性和方法,以及属性方法的区别

一个excel工作表具有哪些属性?VBA属性的获取方法,可以通过自动成员列表和帮助查询。  任何对象都有属性,我们在录入代码是,可以看到其属性。如下图,我们输入“worksheets.”后将会看到下拉列表,列表中包含了对应的属性和方法。  从形状上来区别:前面带绿色图标的就是方法,带手形标志的就是属性。  VBA对象的方法,指的是某个对象所能执行的动作。  比如“创建工作表”,创建是动词,表示方法,它有一个动作,每个动作会产生一个可见的结果。工作表是名词,表示对象。  VBA中对象在前,方法在后。  Worksheets.add——worksheets是工作表对象,add是方法,表示新建。

733 次浏览
excel vba复制工作表方法及实例教程
excel vba复制工作表方法及实例教程

Excel中的vba复制工作表,一般是使用Copy方法。但往往复制的要求不同,因此代码也有所不同。我们以两个常用的vba复制工作表例子来加以说明和学习。  vba复制工作表案例一Sub vba复制工作表()   Worksheets("sheet1").Copy Before:=Worksheets("sheet2") End Sub  说明:上面代码的意思是:在当前工作簿中复制工作表sheet1并将所复制的工作表放在工作表sheet2之前。  又比如:Worksheets("sheet2").Copy After:=Worksheets("sheet3"),这句代码的意思就是在当前工作簿中复制工作表sheet2并将所复制的工作表放在工作表sheet3之后。  Copy方法带两个可选参数,Before和After,使用时两个参数任选其一。  vba复制工作表案例二Sub vba复制工作表()     Dim bok As Workbook     ActiveSheet.Copy     Set bok = ActiveWorkbook     bok.SaveAs "blwbbs.xlsx" End Sub  说明:上面代码的意思是将当前打开的工作薄中的当前工作表,复制到同一路径,并单独保存为一个工作簿,文件名为blwbbs.xlsx。

871 次浏览
excel VBA下标越界的原因,以及下标越界的解决方法
excel VBA下标越界的原因,以及下标越界的解决方法

VBA初学者,常常会遇到下标越界问题。  尽管出现下标越界的原因是多种多样,但终究是因为对象不存在或者超出范围,就会出现下标越界的提示框,如下图所示:  Microsoft Visual Basic ~运行时错误'9'~下标越界,错误原因分析:  如果使用数组时,数组的下标超出数组的可取值范围就会出现这个错误,这个数组可以是自定义的也可以是系统自带的。1.自定义数组:  dim arr1(1 to 5)  arr1(10)=555 因为arr1数组为1到5,这里却是10,所以就会报下标越界错误。2.系统自带的数组: 一个excel工作表表有3张Sheet Sub 下标越界()   MsgBox Sheets(4).Name End Sub 这里的Sheets(4)显然已经超出了3张Sheet,因此也会报下标越界错误。  总之,有多种情况会引起“下标越界”的报错。  下标越界错误大概有以下的原因和解决方法:   引用了不存在的数组元素。

1138 次浏览
excel vba引用工作表的三种写法
excel vba引用工作表的三种写法

vba引用工作表是我们在学习VBA过程中很常用。  本文提供三种vba引用工作表的代码,通过这三种方式都可以实现vba引用工作表名。  方法一:Sheets(Sheet.Index)  方法二:Sheets(Sheets.Name)  方法三:Sheets.CodeName  下面是vba引用工作表的相关的一个截图,可以很直观的看到其使用。

488 次浏览
excel利用VBA批量生成几十张销售通知单
excel利用VBA批量生成几十张销售通知单

每天都会收到同事提报的销售清单数据,每天的表里都有几十张SHEET,她需要每天将这几十张SHEET中的部分数据粘贴成一张日清单总表。她日复一日的重复着这些工作,如此无意义的体力劳动,让她深感疲倦。于是她问我有没有什么办法可以快速将这些分表数据弄到总表中去。也就是说她要将下图 【图1】中的数据自动粘贴到总表中去,即【图2】的效果。   【图1】源表如下:↓

828 次浏览
共计14条记录 1 2 下一页